Virtual machines (VMs) may be executed by a group, or “cluster,” of host computing devices. Each VM creates an abstraction of physical computing resources, such as a processor and memory, of the host executing the VM and executes a “guest” operating system, which, in turn, executes one or more software applications. To the guest operating system and guest software applications, the abstracted resources may be functionally indistinguishable from actual physical resources.
At least some host computing devices are grouped together in one or more datacenters. The datacenters may be at least partially virtualized to facilitate the migration, maintenance, and recovery of applications and data between computing devices and datacenters.
An administrator of a datacenter may desire to perform one or more scans of data within the VMs to ensure that the data does not contain undesired elements. For example, the administrator may desire to scan the data to ensure that no viruses or spyware are present in the data. The administrator may also desire to scan the data to ensure that no personally identifiable or confidential information exists in the VMs.
The virtualization of the datacenters and the computing devices within the datacenters may create unexpected challenges for performing the scans of the VMs. For example, during normal operation of a datacenter, the VMs may be suspended and resumed at a later point in time, may have a state of the VMs be recorded (or “snapshotted”) and may be restored to that state at a later point in time (or “rolled back”), and/or may be migrated from one host computing device to another host computing device. Accordingly, if a scan is initiated on a VM that is suspended and resumed, snapshotted and rolled back, and/or migrated, the scan may be interrupted after only a portion of the data has been scanned. The scan may need to be restarted and all the data, including the previously scanned data, is scanned. Rescanning previously scanned data adversely impacts an efficiency of the scan and/or the datacenter.